#ifndef BARISTA_DETAIL_GL_SDL_GRAPHICS_PLUGIN_HPP_INCLUDED
#define BARISTA_DETAIL_GL_SDL_GRAPHICS_PLUGIN_HPP_INCLUDED

/**
 * @file 
 */

#include <mocha/exported_graphics_plugin.hpp>

namespace barista {
/// 
const char* const gl_sdl_graphics_plugin_type_name = "barista_gl_sdl_graphics_plugin";
/**
 * 
 */
class gl_sdl_graphics_plugin : public mocha::graphics::exported_graphics_plugin<gl_sdl_graphics_plugin> {
public:
	gl_sdl_graphics_plugin(mocha_plugin_object_params* op);
	virtual ~gl_sdl_graphics_plugin();
	virtual const mocha::plugin_char_t* type_name() const;
	virtual std::int32_t capabilities(mocha::graphics::graphics_caps& caps) const;
	virtual std::int32_t open_display_mode(std::uint32_t width, std::uint32_t height, bool full);
	virtual std::int32_t swap_buffers();
	virtual std::int32_t clear_back_buffer(mocha::graphics::rgba_t cc);
private:
	/*...*/
};
}

#endif

